package cc.rengu.oltp.service.realize;

import java.util.Map;

public interface RiskMonitorService {
    /**
     * 是否向监控平台推送交易监控信息
     *
     * @return true-打开，false-关闭
     */
    boolean isMonitor();

    /**
     * 客户化实现交易监控推送方法
     */
    void monitorPush();

    /**
     * 是否告警开关，可自定义规则，默认为根据错误码配置是否告警
     *
     * @return true-打开，false-关闭
     */
    boolean isAlarm();

    /**
     * 客户化实现告警推送
     *
     * @param execptionMsg 异常信息
     */
    void alarmPush(String execptionMsg);

    /**
     * 事前风控检查
     *
     * @return true-风险交易,false-非风险交易
     */
    boolean isRiskTrans();

    /**
     * 是否发送风控平台进行信息采集，可自定义规则，默认不发送
     *
     * @return true-打开，false-关闭
     */
    boolean isRiskCollect();

    /**
     * 客户化实现交易风控推送
     *
     * @param message 推送的消息内容，Key为消息描述，Value为消息内容
     */
    void riskCollectPush(Map<String, String> message);
}
